<?php

/*
  |--------------------------------------------------------------------------
  | Application Routes
  |--------------------------------------------------------------------------
  |
  | Here is where you can register all of the routes for an application.
  | It's a breeze. Simply tell Laravel the URIs it should respond to
  | and give it the Closure to execute when that URI is requested.
  |
 */
#Người dùng khách
// Route::resource('posts', 'Bai_vietsController');
Route::group(array('before' => 'guest'), function() {
    //Người dùng đăng nhập
    Route::post('user/login', 'NguoiDungTaiKhoanController@postLogin');
    Route::get('user/create', 'NguoiDungTaiKhoanController@getCreateuser');
    Route::post('user/create', 'NguoiDungTaiKhoanController@postCreateuser');
    Route::get('1', 'NguoiDungTaiKhoanController@getLoginWithFacebook');
    Route::get('2', 'NguoiDungTaiKhoanController@getLoginWithGoogle');
    //Controller tra cứu
    Route::controller('ajax', 'AjaxController');
    Route::controller('searchs', 'TracuuController');
    //Trang thông tin liên hệ
    Route::controller('contacts', 'ThongtinlienheController');
    //Trang lỗi 404
    Route::get('404', function() {
        Return View::make('404');
    });
});
if (Auth::check()) {
    Route::group(array('before' => 'auth'), function() {
        //Người dùng đăng nhập
        Route::post('user/login', 'NguoiDungTaiKhoanController@postLogin');
        //Controller tra cứu
        Route::controller('ajax', 'AjaxController');
        Route::controller('searchs', 'TracuuController');
        //Trang thông tin liên hệ
        Route::controller('contacts', 'ThongtinlienheController');
        //Trang lỗi 404
        Route::get('404', function() {
            Return View::make('404');
        });
        #Người dùng hệ thống
        //Trang quản trị
        Route::get('administrator', function () {
            return View::make('pages.trangquantri');
        });
        Route::get('administrator', 'NguoiDungTaiKhoanController@getAdministrator');
        //Người dùng đăng xuất
        Route::get('user/logout', 'NguoiDungTaiKhoanController@getLogout');
        //Người dùng thay đổi mật khẩu
        Route::get('user/changepassword', 'NguoiDungTaiKhoanController@getChangepass');
        Route::post('user/changepassword', 'NguoiDungTaiKhoanController@postChangepass');
        //Người dùng cập nhật thông tin cá nhân
        Route::get('user/infouser', 'NguoiDungTaiKhoanController@getInfouser');
        Route::post('user/infouser', 'NguoiDungTaiKhoanController@postInfouser');
        //Học viên đăng ký khóa
        Route::controller('user-register','HocViensDangKyController');
        //Truy vấn CSDL tìm chức năng ứng với người dùng
        $function_list = DB::table('tai_khoans')
                ->leftJoin('chuc_nang_has_tai_khoans', 'chuc_nang_has_tai_khoans.TaiKhoan_Id', '=', 'tai_khoans.id')
                ->leftJoin('chuc_nangs', 'chuc_nang_has_tai_khoans.ChucNang_Id', '=', 'chuc_nangs.id')
                ->where('tai_khoans.id', '=', Auth::user()->id)
                ->select('chuc_nangs.route')
                ->get();
        foreach ($function_list as $function_list) {
                if($function_list->route == 'danh-muc'){
                    //Cập nhật chức năng
                    Route::resource('functions', 'Chuc_nangsController');
                    //Cập nhật chuyên mục bài viết
                    Route::resource('categories', 'Chuyen_muc_bai_vietsController');
                    //Cập nhật hội đồng thi
                    Route::resource('boards', 'Hoi_dong_thisController');
                    //Cập nhật khoá thi
                    Route::resource('courses', 'Khoa_thisController');
                    //Cập nhật chứng chỉ
                    Route::resource('certificates', 'Chung_chisController');
                }if($function_list->route == 'ket-qua'){
                    //Cập nhật học viên
                    Route::resource('students', 'Hoc_viensController');
                    Route::controller('ajaxhocvien', 'AjaxHocVienController');
                    //Cập nhật bằng cấp
                    Route::controller('resultcerts', 'ResultCertController');

                }if($function_list->route == 'khai-giang'){
                    //Quản lý khai giảng khóa
                    Route::resource('manager-courses', 'CoursesController', array('except' => array('show')));
                    //Quản lý tạo khóa thi
                    Route::resource('schedules', 'SchedulesController', array('except' => array('show')));
 
                }if($function_list->route == 'accounts'){
                    //Quản lý tài khoản
                    Route::resource('accounts', 'TaikhoansController');
                    //Quản lý quyền
                    Route::controller('permissions', 'PhanQuyenController');
              
                }if($function_list->route == 'statistics'){
                    //Thống kê
                    Route::controller('statistics', 'ThongkeController');
             
                }if($function_list->route == 'hoc-vien'){
                    //Quản lý học viên khóa học
                    Route::controller('manager-students','QuanLyHocVienController');
                    
              
                }if($function_list->route == 'news'){
                    //Quản lý bài viết
                    Route::resource('news', 'TintucsController');

                }

            }
        });
    }
Route::get('/test', function(){
    return View::make('test');
});
Route::get('print_cs', function() {
                        Return View::make('pages.print_course');
                    });
//Controller cuối
Route::controller('/', 'NguoiDungBaiVietController');
 

